import * as dateFns from 'date-fns'

/**
 * 时间格式化
 */
export function dateFormat(dateObj, dateFormat = 'yyyy-MM-dd HH:mm:ss') {
	if (!dateObj) { 
		return '' 
	}
	try {
		if (typeof dateObj === 'string') {
			dateObj = new Date(dateObj)
		}
		return dateFns.format(dateObj, dateFormat)
	} catch (error) {
		console.error(error)
		return dateObj
	}
}

/**
 * 选项过滤
 * @param {*} val  值
 * @param {*} options 选项值
 * @param {*} labelKey  选项的展示值key
 * @param {*} valueKey  选项的值key
 */
export function codeFormat(val, options = [], labelKey = 'label', valueKey = 'value', defaultValue = '') {
	let opt
	if (Array.isArray(options)) {
		opt = options.find(x => x[valueKey] === val)
	}
	return opt ? opt[labelKey] : val || defaultValue
}